//package com.shwread.android.qysw.activity;
//
//import java.io.Serializable;
//import java.lang.reflect.Type;
//import java.util.ArrayList;
//import java.util.List;
//
//import logic.bean.MyOrderTakeoutLeftBean;
//import logic.bean.OrderFoodListBean;
//import logic.bean.OrderTakeoutBean;
//import logic.bean.OrderTakeoutTableBean;
//import logic.constants.Const;
//import logic.dao.OrderTakeoutDao;
//import logic.util.MoneyUtil;
//import logic.util.ScreenUtil;
//import logic.util.Utils;
//
//import org.apache.http.Header;
//import org.geometerplus.zlibrary.core.application.SysApplication;
//
//import android.annotation.TargetApi;
//import android.content.Intent;
//import android.graphics.Color;
//import android.graphics.drawable.AnimationDrawable;
//import android.os.Build;
//import android.os.Bundle;
//import android.os.Handler;
//import android.text.Html;
//import android.view.LayoutInflater;
//import android.view.View;
//import android.view.View.OnClickListener;
//import android.view.ViewGroup;
//import android.widget.AbsListView;
//import android.widget.AbsListView.LayoutParams;
//import android.widget.AbsListView.OnScrollListener;
//import android.widget.AdapterView;
//import android.widget.AdapterView.OnItemClickListener;
//import android.widget.BaseAdapter;
//import android.widget.Button;
//import android.widget.ImageView;
//import android.widget.ListView;
//import android.widget.TextView;
//
//import com.google.gson.reflect.TypeToken;
//import com.shwread.android.qysw10000133.R;
//import com.shwread.android.qysw.adapter.OrderTakeoutRightListAdapter;
//import com.shwread.android.ui.page.NewOrderIndexPage;
//import com.shwread.android.ui.widget.takeout.PinnedHeaderListView;
//import com.shwread.http.ActionHelp;
//import com.shwread.http.base.ObjectHttpResponseHandler;
//
//
///***
// * 外卖菜单页面
// *
// * @author hss
// */
//public class OrderTakeoutActivity
//        extends
//        BaseBusinessActivity
//        implements
//        OnClickListener
//{
//	private View                          loadingView;
//	private ImageView                     loadingImg;
//	private AnimationDrawable             animationDrawable;
//	/** 判断最后一次数据加载是否成功，不成功的话每次进入此页面需要显示加载动画 */
//	private Button                        btnBack;
//	private TextView                      tvTitle;
//	private PinnedHeaderListView          right_listview;
//	private ListView                      left_listView;
//	private TextView                      tvTopView;
//	private TextView                      tvSure, tvMoney, tvSelectTotal, tvOrderMoney;
//	private LeftListViewAdapter           leftAdapter;
//	private OrderTakeoutRightListAdapter  rightAdapter;
//	private View                          curMyView;
//	private View                          footerView;
//	private View                          vBottom;
//	private boolean                       isScroll            = true;
//	private List<OrderTakeoutBean>        leftBeans;
//	private List<OrderFoodListBean>       rightBeans          = new ArrayList<OrderFoodListBean>();
//	public static List<OrderFoodListBean> selectFoodListBeans = new ArrayList<OrderFoodListBean>();
//	public static OrderTakeoutDao         orderDao;
//	private List<MyOrderTakeoutLeftBean>  leftOrderCountBeans;
//	private double                        orderTakeoutMoney   = 50;                                //多少钱起送
//	private double                        selectOrderTakeoutMoney;                                 //选择菜品多少钱
//	private String                        storeName;
//
//	@Override
//	protected void onCreate(Bundle savedInstanceState) {
//		super.onCreate(savedInstanceState);
//		SysApplication.getInstance().addActivity(this);
//		setContentView(R.layout.order_takeout_view);
//		//		storeName = OrderIndexPage.info.getName();//从首页获取信息
//		//		orderTakeoutMoney = (double) OrderIndexPage.info.getLowestMoney() / 100;
//		storeName = NewOrderIndexPage.info.getName();//从首页获取信息
//		orderTakeoutMoney = (double) NewOrderIndexPage.info.getLowestMoney() / 100;
//		orderDao = OrderTakeoutDao.getInstance(this);
//		orderDao.setActivity(this);
//		initView();
//		updateLoadingView(0);
//		initData();
//	}
//
//	@Override
//	protected void onResume() {
//		super.onResume();
//		initUI();
//	}
//
//	private void initUI() {
//		getLeftOrderBeans();
//		getSelectTotalMoney();
//		tvTitle.setText("外卖");
//		tvTopView.setText(Utils.isEmpty(storeName) ? "" : (Html.fromHtml(storeName + "外卖配送平均时间： <font color=#ff9600>30分钟</font>")));
//	}
//
//	private void initView() {
//		footerView = LayoutInflater.from(this).inflate(R.layout.order_takeout_right_list_footview, null);
//		loadingView = findViewById(R.id.common_loading_layout);
//		loadingImg = (ImageView) findViewById(R.id.common_loading__img);
//		curMyView = findViewById(R.id.order_takeout_layout_view);
//		btnBack = (Button) findViewById(R.id.common_header_back);
//		tvTitle = (TextView) findViewById(R.id.common_header_name);
//		tvSure = (TextView) findViewById(R.id.order_takeout_sure);
//		tvMoney = (TextView) findViewById(R.id.order_takeout_money_money);
//		tvOrderMoney = (TextView) findViewById(R.id.order_takeout_money_total);
//		tvSelectTotal = (TextView) findViewById(R.id.order_takeout_select_total);
//		vBottom = findViewById(R.id.order_takeout_bottom_view);
//		btnBack.setVisibility(View.VISIBLE);
//		tvTopView = (TextView) findViewById(R.id.order_takeout_top_view);
//		right_listview = (PinnedHeaderListView) findViewById(R.id.order_takeout_right_listview);
//		if (right_listview.getFooterViewsCount() == 0) right_listview.addFooterView(footerView);
//		left_listView = (ListView) findViewById(R.id.order_takeout_left_listview);
//		leftAdapter = new LeftListViewAdapter();
//		left_listView.setAdapter(leftAdapter);
//		rightAdapter = new OrderTakeoutRightListAdapter(this);
//		rightAdapter.setActivity(this);
//		right_listview.setAdapter(rightAdapter);
//		tvSure.setOnClickListener(this);
//		btnBack.setOnClickListener(this);
//		left_listView.setOnItemClickListener(new OnItemClickListener()
//		{
//			@Override
//			public void onItemClick(AdapterView<?> arg0, View view, int position, long arg3) {
//				isScroll = false;
//
//				for (int i = 0; i < left_listView.getChildCount(); i++)
//				{
//					if (i == position)
//					{
//						selectLeft(i);
//					}
//					else
//					{
//						unSelectLeft(i);
//					}
//				}
//
//				int rightSection = 0;
//				for (int i = 0; i < position; i++)
//				{
//					rightSection += rightAdapter.getCountForSection(i) + 1;
//				}
//				right_listview.setSelection(rightSection);
//
//			}
//
//		});
//
//		right_listview.setOnScrollListener(new OnScrollListener()
//		{
//
//			@Override
//			public void onScrollStateChanged(AbsListView arg0, int arg1) {
//
//			}
//
//			@Override
//			public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
//				if (isScroll)
//				{
//					for (int i = 0; i < left_listView.getChildCount(); i++)
//					{
//
//						if (i == rightAdapter.getSectionForPosition(firstVisibleItem))
//						{
//							selectLeft(i);
//						}
//						else
//						{
//							unSelectLeft(i);
//						}
//					}
//
//				}
//				else
//				{
//					isScroll = true;
//				}
//			}
//		});
//
//	}
//
//	//外卖菜单左边选中
//	private void selectLeft(int i) {
//		left_listView.getChildAt(i).setBackgroundColor(Color.rgb(255, 255, 255));
//		((ViewGroup) left_listView.getChildAt(i)).getChildAt(0).setBackgroundColor(0xffff9600);
//		((TextView) ((ViewGroup) left_listView.getChildAt(i)).getChildAt(1)).setTextColor(0xffff9600);
//	}
//
//	//外卖菜单左边未选中
//	private void unSelectLeft(int i) {
//		left_listView.getChildAt(i).setBackgroundColor(Color.TRANSPARENT);
//		((ViewGroup) left_listView.getChildAt(i)).getChildAt(0).setBackgroundColor(Color.TRANSPARENT);
//		((TextView) ((ViewGroup) left_listView.getChildAt(i)).getChildAt(1)).setTextColor(0xff323232);
//
//	}
//
//	private void initData() {
//		ActionHelp.qryFoodListByStoreId(this, NewOrderIndexPage.info.getStoreId(), 3, new ObjectHttpResponseHandler<List<OrderTakeoutBean>>()
//		{
//
//			@Override
//			public Type getType() {
//				return new TypeToken<List<OrderTakeoutBean>>()
//				{
//				}.getType();
//			}
//
//			@Override
//			public void onFailure(int arg0, Header[] arg1, String arg2, Throwable arg3) {
//
//			}
//
//			@Override
//			public void onSuccess(int arg0, Header[] arg1, final List<OrderTakeoutBean> arg2, String arg3) {
//				handler.post(new Runnable()
//				{
//					@Override
//					public void run() {
//						updateLoadingView(1);
//						for (int i = 0; i < arg2.size(); i++)
//						{
//							rightBeans.addAll(arg2.get(i).getFoodList());
//						}
//						initBannerData();
//						leftBeans = arg2;
//						initSelectFoodList();
//						leftAdapter.notifyDataSetChanged();
//						rightAdapter.setData(arg2);
//					}
//				});
//
//			}
//		});
//	}
//
//	void initBannerData() {
//		List<OrderTakeoutTableBean> bannerFoodBeans = orderDao.getOrderTableBeans();
//		if (bannerFoodBeans != null && bannerFoodBeans.size() > 0)
//		{
//			for (int i = 0; i < rightBeans.size(); i++)
//			{
//				for (int j = 0; j < bannerFoodBeans.size(); j++)
//				{
//					if ((rightBeans.get(i).getFoodId() + "").equals(bannerFoodBeans.get(j).getFoodId()))
//					{
//						bannerFoodBeans.get(j).setSortId(rightBeans.get(i).getSortId() + "");
//						orderDao.updateBean(bannerFoodBeans.get(j));
//						break;
//					}
//				}
//			}
//		}
//	}
//
//	@TargetApi (Build.VERSION_CODES.JELLY_BEAN)
//	private class LeftListViewAdapter
//	        extends
//	        BaseAdapter
//	{
//
//		@Override
//		public int getCount() {
//			return leftBeans == null ? 0 : leftBeans.size();
//		}
//
//		@Override
//		public Object getItem(int arg0) {
//			return leftBeans == null ? null : leftBeans.get(arg0);
//		}
//
//		@Override
//		public long getItemId(int arg0) {
//			return arg0;
//		}
//
//		@SuppressWarnings ("deprecation")
//		@Override
//		public View getView(int arg0, View arg1, ViewGroup arg2) {
//			final OrderTakeoutBean bean = leftBeans.get(arg0);
//			if (arg1 == null) arg1 = LayoutInflater.from(OrderTakeoutActivity.this).inflate(R.layout.order_takeout_left_item_view, null);
//			TextView tvName = (TextView) arg1.findViewById(R.id.order_takeout_left_item_name);
//			TextView tvSelectNum = (TextView) arg1.findViewById(R.id.order_takeout_left_item_select_num);
//			tvSelectNum.setText("");
//			tvSelectNum.setBackgroundResource(R.color.common_transparent);
//			//			if (leftOrderCountBeans != null && leftOrderCountBeans.size() > 0)
//			//			{
//			for (int i = 0; i < leftOrderCountBeans.size(); i++)
//			{
//				if (bean.getDishesSortDto().getSortId() == Integer.parseInt(leftOrderCountBeans.get(i).getSortId()))
//				{
//					if (leftOrderCountBeans.get(i).getLeftOrderCount() > 0)
//					{
//						tvSelectNum.setBackgroundResource(R.drawable.order_takeout_right_tv_select_num_bg);
//						tvSelectNum.setText(leftOrderCountBeans.get(i).getLeftOrderCount() + "");
//					}
//					else
//					{
//						tvSelectNum.setText("");
//						tvSelectNum.setBackgroundResource(R.color.common_transparent);
//					}
//				}
//			}
//			tvName.setText(bean.getDishesSortDto().getName());
//			return arg1;
//		}
//	}
//
//	@Override
//	public Handler getUIHandler() {
//		return handler;
//	}
//
//	Handler handler = new Handler()
//	                {
//		                public void handleMessage(android.os.Message msg) {
//			                switch (msg.what) {
//								case 0:
//									getLeftOrderBeans();
//									rightAdapter.setRightBeans();
//									getSelectTotalMoney();
//									leftAdapter.notifyDataSetChanged();
//									//									right_listview.setFooterDividersEnabled(true);
//									break;
//								case 1:
//									//如果菜品已下架，数据库里边还存在的话 删除数据库更新ＵＩ
//									getLeftOrderBeans();
//									getSelectTotalMoney();
//									break;
//							}
//						};
//	                };
//
//	/**
//	 * 首次进入page加载动画
//	 *
//	 * @param flag
//	 *            0:加载中，1：加载完成，-1：加载失败
//	 */
//	private void updateLoadingView(int flag) {
//		switch (flag) {
//			case -1:
//				loadingView.setVisibility(View.VISIBLE);
//				curMyView.setVisibility(View.GONE);
//				if (animationDrawable != null && animationDrawable.isRunning())
//				{
//					animationDrawable.stop();
//				}
//				loadingImg.setBackgroundResource(R.drawable.home_loading_fail);
//				break;
//			case 0:
//				loadingView.setVisibility(View.VISIBLE);
//				curMyView.setVisibility(View.GONE);
//				loadingImg.setBackgroundResource(R.anim.home_progress);
//				animationDrawable = (AnimationDrawable) loadingImg.getBackground();
//				animationDrawable.start();
//				break;
//			case 1:
//				loadingView.setVisibility(View.GONE);
//				curMyView.setVisibility(View.VISIBLE);
//				break;
//		}
//	}
//
//	@Override
//	public void onClick(View arg0) {
//		switch (arg0.getId()) {
//		//选好了
//			case R.id.order_takeout_sure:
//				//selectFoodListBeans 选中的菜品
//				Intent intent = new Intent(OrderTakeoutActivity.this, OrderMenuConfirmActivity.class);
//				initSelectFoodList();
//				intent.putExtra("foodList", (Serializable) selectFoodListBeans);
//				startActivity(intent);
//				break;
//			case R.id.common_header_back:
//				this.finish();
//				break;
//		}
//	}
//
//	private void getLeftOrderBeans() {
//		int totalCount = 0;
//		leftOrderCountBeans = orderDao.getOrderTakeoutLeftCount(Const.phone_number);
//		for (int i = 0; i < leftOrderCountBeans.size(); i++)
//		{
//			totalCount += leftOrderCountBeans.get(i).getLeftOrderCount();
//		}
//		if (totalCount > 0)
//		{
//			vBottom.setVisibility(View.VISIBLE);
//			footerView.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, ScreenUtil.dip2px(51)));
//			tvSelectTotal.setText(totalCount + "");
//			tvSelectTotal.setVisibility(View.VISIBLE);
//		}
//		else
//		{
//			vBottom.setVisibility(View.GONE);
//			footerView.setLayoutParams(new LayoutParams(0, 0));
//		}
//	}
//
//	private void getSelectTotalMoney() {
//		selectOrderTakeoutMoney = 0;
//		List<OrderTakeoutTableBean> beans = orderDao.getRightBeans();
//		if (beans != null && beans.size() > 0)
//		{
//			for (int i = 0; i < beans.size(); i++)
//			{
//				selectOrderTakeoutMoney += Integer.parseInt(beans.get(i).getNum()) * Double.parseDouble(beans.get(i).getPrice());
//			}
//		}
//		tvOrderMoney.setVisibility(View.VISIBLE);
//		tvOrderMoney.setText(selectOrderTakeoutMoney > 0 ? "¥" + Utils.getOneMoneyFormat(MoneyUtil.divide(selectOrderTakeoutMoney, 1)) : "");
//		if (selectOrderTakeoutMoney >= orderTakeoutMoney)
//		{
//			tvMoney.setVisibility(View.GONE);
//			tvSure.setBackgroundResource(R.drawable.order_takeout_sure);
//			tvSure.setEnabled(true);
//		}
//		else
//		{
//			tvMoney.setText("还差" + Utils.getOneMoneyFormat(MoneyUtil.divide(orderTakeoutMoney - selectOrderTakeoutMoney, 1)) + "起送");
//			tvMoney.setVisibility(View.VISIBLE);
//			tvSure.setEnabled(false);
//			tvSure.setBackgroundResource(R.drawable.order_takeout_sure_disabled);
//		}
//	}
//
//	public void addSelectFoodList(OrderFoodListBean rightBean) {
//		for (int i = 0; i < selectFoodListBeans.size(); i++)
//		{
//			if (rightBean.getFoodId() == selectFoodListBeans.get(i).getFoodId() && rightBean.getSortId() == selectFoodListBeans.get(i).getSortId())
//			{
//				selectFoodListBeans.remove(rightBean);
//			}
//		}
//		selectFoodListBeans.add(rightBean);
//	}
//
//	//进入页面的时候初始化选中的菜品
//	private void initSelectFoodList() {
//		selectFoodListBeans.clear();
//		List<OrderTakeoutTableBean> rightTableBeans = orderDao.getRightBeans();
//		if (rightTableBeans != null && rightTableBeans.size() > 0)
//		{
//			for (OrderTakeoutTableBean tableBean : rightTableBeans)
//			{
//				boolean isExist = false;
//				for (OrderFoodListBean bean : rightBeans)
//				{
//					if (bean.getFoodId() == Long.parseLong(tableBean.getFoodId()) && bean.getSortId() == Integer.parseInt(tableBean.getSortId()))
//					{
//						bean.setBuyNum(Integer.parseInt(tableBean.getNum()));
//						selectFoodListBeans.add(bean);
//						isExist = true;
//					}
//				}
//				if (!isExist) rightAdapter.deleteBean(Integer.parseInt(tableBean.getSortId()), Integer.parseInt(tableBean.getFoodId()));
//			}
//		}
//	}
//
//	@Override
//	protected void onActivityResult(int requestCode, int resultCode, Intent data) {
//		super.onActivityResult(requestCode, resultCode, data);
//		if (requestCode == 100 && resultCode == RESULT_OK)
//		{
//			OrderFoodListBean bean = (OrderFoodListBean) data.getExtras().get("foodBean");
//			addSelectFoodList(bean);
//			leftAdapter.notifyDataSetChanged();
//			handler.sendEmptyMessage(0);
//		}
//	}
//}
